草庐IT

java - 有Java语言的Java解析器吗?

全部标签

c# - 使用 Linq 解析 XML 时,只会获取一个对象

我正在尝试使用以下xml填充数组:130701809010.471886710.3810000010.4900000014:39...等等我正在使用这个Linq查询,这对我来说意味着它将为每个对象创建一个对象:varitems=fromitemindoc.Element("data").Descendants()selectnewCurrency{Close=item.Element("price").Value.ToString(),Date=item.Element("date").Value.ToString(),Low=item.Element("low").Value.ToS

java - 如何通过 XPaths 将 XML 映射到 Java 对象?

给定XML示例:LOLOLOLOL应该映射到:classMyFoo{Stringlol;StringthisIsIt;ObjectsomethingUnrelated;}约束:不应转换XML,它作为已解析的org.w3c.dom.Document对象提供。类不会也不会1:1映射到XML。我只对将XML的特定路径映射到对象的特定字段感兴趣。我梦想的解决方案是这样的:@XmlMappedclassMyFoo{@XmlElement("/fooRoot/bar/lol")Stringlol;@XmlElement("/noob/boon/thisIsIt")StringthisIsIt;@X

java - Castor 能否处理从基 XSD 导入的多个 XSD 的类生成?

我有几个重用相同实体的XSD。例如,ProductPurchaseRequest.xsd的两个XSD和ProductQuoteRequest.xsd两者都有一个在其中标记以描述相关产品。为此,我创建了一个Product.xsd文件来定义标签和两个ProductPurchaseRequest.xsd和ProductQuoteRequest.xsd导入Product.xsd用`.我想使用Castor从这些XSD生成Java类,并让它们使用相同的类来表示Product这样我就可以重用相同的逻辑将它们映射到我们模型的ProductModel类。Castor能做到吗?如果是这样,它的Ant任务语

java - 优化 DOM 和 XPath Java 代码

我的代码太慢了,但我不确定如何改进它。将一个1k文件从磁盘读入DOM大约需要20毫秒,这可能没问题,具体取决于磁盘,但是我还有另外20毫秒用于处理xpath语句,这太多了。这是一些带有时间注释的示例代码。我怎样才能改进代码?这发生在构建时:DocumentBuilderFactorydbFactory=DocumentBuilderFactory.newInstance();DocumentBuilderdBuilder=this.dbFactory.newDocumentBuilder();XPathExpression[]ex=newXPathExpression[]{about3

java - 使用带有 namespace 和模式的 Jaxb 进行 XML 解码

我有一个如下所示的XML文档:MsgID001hlkJKLHljkhkjlHKJLHkjl6y987HJKH还向我发送了一个架构文档(称为msgdata.xsd)。我正在使用JAXB将上述xml文档解码为Java对象。解码代码如下所示:finalJAXBContextcontext=JAXBContext.newInstance(clazz);SchemaFactorysf=SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);Schemaschema=sf.newSchema(newFile("C:\\temp\\

java - 使用 Java 转换 XML 有哪些不同的方法?

我正在研究如何在Java项目中将XML从一种格式转换为另一种格式。有哪些替代方案,它们的优缺点是什么?目前我发现的替代品:XSLT/XQueryXML将两种格式绑定(bind)到Java并在Java中进行映射时髦 最佳答案 我投票支持XSLT。它的强大优势在于转换规则与您的Java代码是分开的。因此,稍后,您可以轻松地对架构更改使用react,而无需触及您的代码。并且您可以在任何地方测试/调试转换-无需运行应用程序。 关于java-使用Java转换XML有哪些不同的方法?,我们在Stac

java - 如何使用 Xpath 在 XML 树的节点后检索节点?

首先,我必须说,我发现Xpath是一个非常好的解析器,而且我认为与其他解析器相比它非常强大。给定以下代码:DocumentBuilderFactorydomFactory=DocumentBuilderFactory.newInstance();domFactory.setNamespaceAware(true);DocumentBuilderbuilder=domFactory.newDocumentBuilder();Documentdoc=builder.parse("input.xml");XPathxpath=XPathFactory.newInstance().newXPa

java - 像这个示例一样解析 XML 的好方法?

我想知道像这样解析XML的最佳实践是什么:foo@bar.orgfoo@bar.orgsmtp.bar.org465foo@bar.orgfooo!我正在使用Java7,完整的XML更长,但它并不是真正的大文件。我考虑过使用StaxPullParser,因为它看起来很简单,但有一件事我不确定它是否真的是一个好方法:当遇到MailNotification元素时,我可以,例如创建一个新实例,例如邮件类,我对此没有问题。但是:如果我来了怎么办?到To元素?我怎么知道它是否真的在MailNotification元素内,而不是在根目录的正下方?换句话说:我缺少的是处理诸如“现在我在MailNot

java - 为什么在文件包含特殊 UTF-8 字符时使用 InputSource 修复 SAX 解析器

我正在寻求解释,当我的XML文件中有一些特殊的UTF-8字符时,为什么我的SAX解析器会失败。为了解析XML文件,我使用Documentdoc=builder.parse(inputSource);但是,当我使用inputSource时,它工作正常:DocumentBuilderbuilder=factory.newDocumentBuilder();InputStreamin=newFileInputStream(file);InputSourceinputSource=newInputSource(newInputStreamReader(in));Documentdoc=buil

python - 在 python 中解析一个大的 (~40GB) XML 文本文件

我有一个XML文件,我想用python解析它。最好的方法是什么?将整个文档记入内存将是灾难性的,我需要以某种方式一次读取一个节点。我所知道的现有XML解决方案:元素树迷你xml但由于我提到的问题,我担心它们无法正常工作。我也无法在文本编辑器中打开它-generao中关于处理巨型文本文件的任何好的提示? 最佳答案 首先,您是否尝试过ElementTree(内置的纯Python或C版本,或者更好的是lxml版本)?我很确定他们都没有真正将整个文件读入内存。当然,问题在于,无论是否将整个文件读入内存,生成的解析树最终都会在内存中。Elem